A central processing unit (CPU) of a mobile device may go to “sleep” when not being used. When a location of the mobile device is needed, the CPU can be “woken up” in order to obtain the location information.
Location information of a mobile device may be needed by an application executing on the mobile device. The location information is provided to the application via the CPU of the mobile device. The CPU can periodically obtain location information of the mobile device. For example, the CPU can obtain location information every fifteen (15) minutes. The location information can be obtained using location circuitry, such as a global positioning system (GPS).
However, it is a drain on the resources of the CPU and the mobile device to periodically obtain location information. Specifically, periodically waking up the CPU to obtain location information is a drain on the resources of the application processor and can be costly. Further, when the CPU is woken up to obtain location information, other components of the mobile device may also use the resources of the CPU. For example, daemons in the mobile device may be waiting for the CPU to wake up so that operations corresponding to the daemons can be performed.
Therefore, periodically waking up the application processor is inefficient, costly, and can require a lot of resources (e.g., battery life) of the mobile device.